WORST_CASE(?,O(n^3)) Solution: --------- "0" :: [] -(0)-> "A"(11, 4, 3) "0" :: [] -(0)-> "A"(1, 0, 0) "0" :: [] -(0)-> "A"(11, 0, 0) "0" :: [] -(0)-> "A"(0, 0, 0) "0" :: [] -(0)-> "A"(12, 8, 5) "activate" :: ["A"(10, 2, 6)] -(8)-> "A"(0, 0, 0) "add" :: ["A"(1, 0, 0) x "A"(0, 0, 0)] -(3)-> "A"(0, 0, 0) "cons" :: ["A"(8, 8, 6) x "A"(12, 14, 6)] -(8)-> "A"(6, 8, 6) "cons" :: ["A"(0, 0, 0) x "A"(0, 0, 0)] -(0)-> "A"(0, 0, 0) "dbl" :: ["A"(1, 0, 0)] -(1)-> "A"(0, 0, 0) "first" :: ["A"(11, 0, 0) x "A"(6, 8, 6)] -(6)-> "A"(0, 0, 0) "n__first" :: ["A"(12, 0, 0) x "A"(10, 8, 6)] -(8)-> "A"(10, 2, 6) "n__first" :: ["A"(0, 0, 0) x "A"(0, 0, 0)] -(0)-> "A"(0, 0, 0) "n__first" :: ["A"(6, 0, 0) x "A"(6, 0, 0)] -(0)-> "A"(6, 0, 0) "n__terms" :: ["A"(12, 8, 6)] -(10)-> "A"(10, 2, 6) "n__terms" :: ["A"(0, 0, 0)] -(0)-> "A"(0, 0, 0) "n__terms" :: ["A"(4, 4, 0)] -(0)-> "A"(0, 4, 0) "nil" :: [] -(0)-> "A"(13, 15, 15) "recip" :: ["A"(0, 0, 0)] -(0)-> "A"(0, 0, 0) "s" :: ["A"(15, 7, 3)] -(11)-> "A"(11, 4, 3) "s" :: ["A"(1, 0, 0)] -(1)-> "A"(1, 0, 0) "s" :: ["A"(11, 0, 0)] -(11)-> "A"(11, 0, 0) "s" :: ["A"(1, 2, 1)] -(0)-> "A"(0, 1, 1) "s" :: ["A"(0, 0, 0)] -(0)-> "A"(0, 0, 0) "sqr" :: ["A"(11, 4, 3)] -(6)-> "A"(0, 0, 0) "terms" :: ["A"(12, 8, 5)] -(15)-> "A"(0, 0, 0) Cost Free Signatures: --------------------- "0" :: [] -(0)-> "A"_cf(3, 2, 0) "0" :: [] -(0)-> "A"_cf(1, 0, 0) "0" :: [] -(0)-> "A"_cf(2, 0, 0) "0" :: [] -(0)-> "A"_cf(15, 14, 14) "0" :: [] -(0)-> "A"_cf(0, 0, 0) "0" :: [] -(0)-> "A"_cf(7, 5, 0) "0" :: [] -(0)-> "A"_cf(8, 8, 8) "0" :: [] -(0)-> "A"_cf(0, 12, 0) "activate" :: ["A"_cf(2, 12, 0)] -(6)-> "A"_cf(0, 0, 0) "activate" :: ["A"_cf(4, 0, 0)] -(9)-> "A"_cf(0, 0, 0) "add" :: ["A"_cf(1, 0, 0) x "A"_cf(1, 0, 0)] -(0)-> "A"_cf(1, 0, 0) "add" :: ["A"_cf(0, 0, 0) x "A"_cf(0, 0, 0)] -(0)-> "A"_cf(0, 0, 0) "cons" :: ["A"_cf(0, 0, 0) x "A"_cf(0, 0, 0)] -(0)-> "A"_cf(0, 0, 0) "cons" :: ["A"_cf(12, 12, 0) x "A"_cf(2, 12, 0)] -(12)-> "A"_cf(2, 12, 0) "cons" :: ["A"_cf(0, 0, 0) x "A"_cf(4, 0, 0)] -(0)-> "A"_cf(4, 0, 0) "cons" :: ["A"_cf(0, 0, 0) x "A"_cf(1, 0, 0)] -(0)-> "A"_cf(1, 0, 0) "dbl" :: ["A"_cf(2, 0, 0)] -(0)-> "A"_cf(1, 0, 0) "dbl" :: ["A"_cf(0, 0, 0)] -(0)-> "A"_cf(0, 0, 0) "first" :: ["A"_cf(1, 0, 0) x "A"_cf(2, 12, 0)] -(6)-> "A"_cf(0, 0, 0) "first" :: ["A"_cf(1, 0, 0) x "A"_cf(4, 0, 0)] -(9)-> "A"_cf(0, 0, 0) "n__first" :: ["A"_cf(14, 0, 0) x "A"_cf(2, 12, 0)] -(12)-> "A"_cf(2, 12, 0) "n__first" :: ["A"_cf(0, 0, 0) x "A"_cf(0, 0, 0)] -(0)-> "A"_cf(0, 0, 0) "n__first" :: ["A"_cf(1, 0, 0) x "A"_cf(0, 1, 0)] -(1)-> "A"_cf(0, 1, 0) "n__first" :: ["A"_cf(4, 0, 0) x "A"_cf(4, 0, 0)] -(0)-> "A"_cf(4, 0, 0) "n__first" :: ["A"_cf(1, 0, 0) x "A"_cf(1, 0, 0)] -(0)-> "A"_cf(1, 0, 0) "n__terms" :: ["A"_cf(14, 12, 0)] -(2)-> "A"_cf(2, 12, 0) "n__terms" :: ["A"_cf(0, 0, 0)] -(0)-> "A"_cf(0, 0, 0) "n__terms" :: ["A"_cf(8, 1, 0)] -(7)-> "A"_cf(7, 1, 0) "n__terms" :: ["A"_cf(4, 0, 0)] -(4)-> "A"_cf(4, 0, 0) "n__terms" :: ["A"_cf(3, 0, 0)] -(3)-> "A"_cf(3, 0, 0) "nil" :: [] -(0)-> "A"_cf(9, 7, 12) "nil" :: [] -(0)-> "A"_cf(8, 0, 0) "recip" :: ["A"_cf(0, 0, 0)] -(0)-> "A"_cf(4, 14, 14) "recip" :: ["A"_cf(0, 0, 0)] -(0)-> "A"_cf(14, 14, 14) "s" :: ["A"_cf(5, 2, 0)] -(3)-> "A"_cf(3, 2, 0) "s" :: ["A"_cf(1, 0, 0)] -(1)-> "A"_cf(1, 0, 0) "s" :: ["A"_cf(2, 0, 0)] -(2)-> "A"_cf(2, 0, 0) "s" :: ["A"_cf(0, 0, 0)] -(0)-> "A"_cf(0, 0, 0) "s" :: ["A"_cf(12, 5, 0)] -(7)-> "A"_cf(7, 5, 0) "s" :: ["A"_cf(4, 0, 0)] -(4)-> "A"_cf(4, 0, 0) "sqr" :: ["A"_cf(3, 2, 0)] -(1)-> "A"_cf(1, 0, 0) "sqr" :: ["A"_cf(7, 5, 0)] -(3)-> "A"_cf(0, 0, 0) "sqr" :: ["A"_cf(0, 0, 0)] -(4)-> "A"_cf(0, 0, 0) "terms" :: ["A"_cf(10, 9, 0)] -(8)-> "A"_cf(0, 0, 0) "terms" :: ["A"_cf(4, 0, 0)] -(13)-> "A"_cf(1, 0, 0) Base Constructors: ------------------ "\"0\"_A" :: [] -(0)-> "A"(1, 0, 0) "\"0\"_A" :: [] -(0)-> "A"(0, 1, 0) "\"0\"_A" :: [] -(0)-> "A"(0, 0, 1) "\"cons\"_A" :: ["A"(0, 0, 0) x "A"(1, 0, 0)] -(0)-> "A"(1, 0, 0) "\"cons\"_A" :: ["A"(1, 1, 0) x "A"(0, 1, 0)] -(1)-> "A"(0, 1, 0) "\"cons\"_A" :: ["A"(0, 0, 1) x "A"(1, 1, 1)] -(0)-> "A"(0, 0, 1) "\"n__first\"_A" :: ["A"(0) x "A"(0)] -(0)-> "A"(1, 0, 0) "\"n__first\"_A" :: ["A"(0) x "A"(0)] -(1)-> "A"(0, 1, 0) "\"n__first\"_A" :: ["A"(0) x "A"(0)] -(1)-> "A"(0, 0, 1) "\"n__terms\"_A" :: ["A"(0)] -(1)-> "A"(1, 0, 0) "\"n__terms\"_A" :: ["A"(0)] -(0)-> "A"(0, 1, 0) "\"n__terms\"_A" :: ["A"(0)] -(0)-> "A"(0, 0, 1) "\"nil\"_A" :: [] -(0)-> "A"(1, 0, 0) "\"nil\"_A" :: [] -(0)-> "A"(0, 1, 0) "\"nil\"_A" :: [] -(0)-> "A"(0, 0, 1) "\"recip\"_A" :: ["A"(0, 0, 0)] -(0)-> "A"(1, 0, 0) "\"recip\"_A" :: ["A"(0, 0, 0)] -(0)-> "A"(0, 1, 0) "\"recip\"_A" :: ["A"(0, 0, 0)] -(0)-> "A"(0, 0, 1) "\"s\"_A" :: ["A"(1, 0, 0)] -(1)-> "A"(1, 0, 0) "\"s\"_A" :: ["A"(1, 1, 0)] -(0)-> "A"(0, 1, 0) "\"s\"_A" :: ["A"(0, 1, 1)] -(0)-> "A"(0, 0, 1)